<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>

<body>
  <script>
    //  js 中一切都是对象  最大的对象是window 
    // 1. 一类事物中的一个单体
    // 2. 对象都有属性和方法
    // 3. 我们通常认为 "JavaScript 对象是键值对的容器"。 键值对通常写法为 name: value(键与值以冒号分割) 。外层 {}
    // js 的内置对象 和自定义对象
    // 内置对象 5种
    // 数组对象Array 字符串对象String 日期对象 Date()  数学对象 Math  正则对象  RegExp 
    var x = 8;
    // 5 种创建对象的方式
    // 1) 字面量方式 
    var car = {
      name: "奔驰",
      color: "红色",
      run: function () {
        alert("跑")
      }
    }
    // 2) 构造法
    var bentian = new Object();
    bentian.name = "本田";
    bentian.color = "红色"
    bentian.run = function () { }
    // 3) 工厂函数创建对象
    // 对单例对象的一个包裹  产生不同的对象
    function CarFac(name, color) {
      var car = {
        name: name,
        color: color,
        run: function () { }
      }
      return car
    }
    var fengtian = CarFac("丰田", "蓝色")
    var q8 = CarFac("qq", "红色");

  </script>
</body>

</html>